package com.wuyb.pojo.entity;

import com.wuyb.enums.ErrorCode;

/**
 * 返回数据封装工具类
 *
 * @Author: wyb
 * @Date: 2023/12/31/19:50
 * @Description:
 */
public class ResultUtils {


    /**
     * 成功
     *
     * @param data
     * @param <T>
     * @return
     */
    public static <T> BaseResponse<T> success(T data) {
        return new BaseResponse<>(ErrorCode.SUCCESS.getCode(), data, "");
    }

    /**
     * 成功
     * @param data
     * @param message
     * @return
     * @param <T>
     */
    public static <T> BaseResponse<T> success(T data, String message) {
        return new BaseResponse<>(ErrorCode.SUCCESS.getCode(),data,message);
    }


    /**
     * 成功
     * @param message
     * @return
     * @param <T>
     */
    public static <T> BaseResponse<T> success(String message) {
        return new BaseResponse<>(ErrorCode.SUCCESS.getCode(),null, message);
    }


    /**
     * 失败
     *
     * @param errorCode
     * @return
     */
    public static BaseResponse error(ErrorCode errorCode) {
        return new BaseResponse<>(errorCode);
    }


    /**
     * 失败
     *
     * @param code
     * @param message
     * @return
     */
    public static BaseResponse error(int code, String message) {
        return new BaseResponse(code, null, message);
    }


    /**
     * 失败
     *
     * @param errorCode
     * @param message
     * @return
     */
    public static BaseResponse error(ErrorCode errorCode, String message) {
        return new BaseResponse(errorCode.getCode(), null, message);
    }

    /**
     * 失败
     * @param message
     * @return
     */
    public static BaseResponse error(String message) {
        return new BaseResponse(ErrorCode.OPERATION_ERROR.getCode(), null, message);
    }

}
